﻿// <copyright file="NativeMethods.cs" company="DotNetLib">
//
// .netlib: http://www.codeplex.com/DotNetLib
//
// Portions of this were part of the CodePlex "Extensions for .NET Framework"
//    project and written by Marco Minerva, mailto:marco.minerva@gmail.com
//
// This code is released under the New BSD License.
// A copy of this license is available at:
// http://www.codeplex.com/DotNetLib/license
//
// </copyright>

namespace DotNetLib.Compact
{
  using System;
  using System.Runtime.InteropServices;

  internal class NativeMethods
  {
    public const int SETPOWERMANAGEMENT = 6147;

    public enum VideoPowerState : byte
    {
      VideoPowerOn = 1,
      VideoPowerStandBy = 2,
      VideoPowerSuspend = 3,
      VideoPowerOff = 4,
    }

    [DllImport("coredll")]
    public static extern IntPtr GetDC(IntPtr hWnd);

    [DllImport("coredll")]
    public static extern void ReleaseDC(IntPtr hWnd, IntPtr hDC);

    [DllImport("coredll")]
    public static extern int ExtEscape(IntPtr hDc, uint nEscape, uint cbInput, byte[] plszInData, int cbOutput, IntPtr lpszOutData);
  }
}
